<?php

class Web_Admin_Productos_Svc_EliminarRelacion
{

    public function doIt()
    {
        $this->eliminar();
    }

    private function eliminar()
    {
        $rel_id = Ey::getPrm(4);
        
        /*  ¿Queremos saber todos los productos que no tienen categoria?
         *  Obtenemos el id del producto de la relacion a eliminar
         *  Verificamos en cuantas categorias esta relacionado el producto
         *  Si el producto esta relacionado con una categoria actualizamos su estado
         */
        
        //obtiene el id del producto de la relacion a eliminar

        $obj = new Web_Db_CategoriasDetalle();
        $db = $obj->getAdapter();
        $select = $db->select()
                ->from('ma_categorias_detalle', array('det_pro_id'))
                ->where('det_id = ?', $rel_id);
        $rs = $db->fetchRow($select);
        
        //verificamos en cuantas categorias pertenece el producto

        if ($rs) {
            $db = $obj->getAdapter();
            $select = $db->select()
                    ->from('ma_categorias_detalle', array('det_id'))
                    ->where('det_pro_id = ?', $rs->det_pro_id);
            $rs2 = $db->fetchAll($select);
            
            //Si el producto solo pertenece a una categoria actualizamos su estado de relacionado a 0
            
            if (count($rs2) == 1){
                $obj2 = new Web_Db_Productos();
                $row = array('pro_relacionado' => '0');
                $obj2->update($row, 'pro_id=' . $rs->det_pro_id);
            }
        }
        
        //eliminar la relacion producto - categoria

        $obj->delete('det_id=' . $rel_id);

        Ey::redirect($_SERVER['HTTP_REFERER']);
    }

}